In conventional electronic designs, the integrated circuits, the IC (integrated circuit) packaging, and the printed circuit boards are often developed and designed independently. Modern electronic designs often require or desire the integrated circuit, their respective packaging, and the printed circuit board incorporating multiple packaged integrated circuits to be developed in a multi-fabric environment. That is, one designer may need or desire to design in the context of the others. For example, the integrated circuit designer may need or desire to implement the integrated circuit design in view of the contexts of the packaging fabric as well as the printed circuit board fabric.
Similarly, a printed circuit board designer may desire to implement or tune the printed circuit design in the context of the packaging design fabric and/or the integrated circuit design fabric. As a practical example, consider the situation where an advanced package is to be incorporated onto a PCB (printed circuit board) for a consumer product that is driven by cost considerations and performance. In conventional approaches, while device placement and assignment decisions made solely in the context of the chip may yield the ideal chip-level design, these device placement and assignment decisions could nevertheless result in missing the cost or performance goals for the end consumer product. In these convention approaches, the chip-level placement usually dictates, for example, the bump and ball assignments in the downstream fabrics that may result in excessive coupling in the interfaces and a complex routing scheme that requires additional layers in the package and/or PCB substrates.
Therefore, there exists a need for a multi-fabric design environment that provides a coherent framework to integrate the integrated circuit design fabric, the packaging design fabric, and the printed circuit board fabric in a seamless manner.